#include<bits/stdc++.h>
using namespace std;

int main(){
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    int n,t,a;
    cin>>n>>t;
    vector<int> pos[n+1];
    for(int i=1;i<=n;i++){
        cin>>a;
        pos[a].push_back(i);
    }
    int l,r,p,q;
    for(int i=0;i<t;i++){
        cin>>l>>r>>p>>q;
        int res=0;
        for(auto x:pos[q]){
            if(x<l) continue;
            if(x>r) break;
            auto lb = lower_bound(pos[p].begin(),pos[p].end(),x);
            auto rb = upper_bound(pos[p].begin(),pos[p].end(),r);
            res+=rb-lb;
        }
        cout<<res<<'\n';
    }
    return 0;
}
